package com.ming.study.service;

import com.ming.study.pojo.Course;
import com.ming.study.pojo.UserInfo;
import com.ming.study.pojo.vo.*;

import java.util.List;
import java.util.Map;

/**
 * 必须先login获取cookie存入redis
 */
public interface JwService {
    /**
     * 登录获取cookie
     * @return
     */
    boolean login(UserLoginVo userLoginVo);

    /**
     * 获取验证码
     * @return
     */
    String getEncoded(UserLoginVo userLoginVo);

    /**
     * 首页信息
     * @return
     */

    String getIndex(String userAccount);

    /**
     * 获取周次
     * @param userAccount
     * @return
     */
    WeekOptionsVo getWeekOptions(String userAccount);

    /**
     * 查询课表
     * @return
     */
    List<List<Course>> getCourseFromWeek(String userAccount, String date);

    /**
     * 获取个人信息
     */
    UserInfo getUserInfo(String userAccount);

    /**
     * 获取所有课程成绩
     * @param userAccount
     * @param sortType 0正序，1反序
     * @return
     */
    CourseScoresVo getCourseScores(String userAccount, int sortType);

    /**
     * 获取默认学期
     * @param userAccount
     * @return
     */
    String getDefaultTerm(String userAccount);

    /**
     * 获取所有考试安排
     * @param userAccount
     * @return
     */
    List<ExamVo> getAllExamSchedule(String userAccount);

    /**
     * 获取考级证书成绩
     * @param userAccount
     * @return
     */
    List<CertificateScoreVo> getAllCertificateScore(String userAccount);

    /**
     * 获取课程表底部备注
     * @param userAccount
     * @return
     */
    List<CourseScheduleRemark> getCourseScheduleRemark(String userAccount);
}
